﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class Aadress : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IAadress {
        
        private string @__aadresskood;
        
        private string @__aadressTekst;
        
        private System.Int64? @__maakondKL;
        
        private System.Int64? @__alevKylaLinnaosaKL;
        
        private System.Int64? @__liikluspindKL;
        
        private string @__majaKrunt;
        
        private string @__hooneosa;
        
        private System.Int64? @__riikKL;
        
        private System.Int64? @__linnValdKL;
        
        private System.Int64? @__vaikekohtKL;
        
        private System.Decimal? @__punktiXKoordinaat;
        
        private System.Decimal? @__punktiYKoordinaat;
        
        private string @__kirjeldus;
        
        private string @__nimi;
        
        private string @__tanav;
        
        private string @__sihtnumber;
        
        private System.Int32? @__aDRID;
        
        public Aadress() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public Aadress(
                    string @aadresskood, 
                    string @aadressTekst, 
                    System.Int64? @maakondKL, 
                    System.Int64? @alevKylaLinnaosaKL, 
                    System.Int64? @liikluspindKL, 
                    string @majaKrunt, 
                    string @hooneosa, 
                    System.Int64? @riikKL, 
                    System.Int64? @linnValdKL, 
                    System.Int64? @vaikekohtKL, 
                    System.Decimal? @punktiXKoordinaat, 
                    System.Decimal? @punktiYKoordinaat, 
                    string @kirjeldus, 
                    string @nimi, 
                    string @tanav, 
                    string @sihtnumber, 
                    System.Int32? @aDRID) {
            this.@__aadresskood = @aadresskood;
            this.@__aadressTekst = @aadressTekst;
            this.@__maakondKL = @maakondKL;
            this.@__alevKylaLinnaosaKL = @alevKylaLinnaosaKL;
            this.@__liikluspindKL = @liikluspindKL;
            this.@__majaKrunt = @majaKrunt;
            this.@__hooneosa = @hooneosa;
            this.@__riikKL = @riikKL;
            this.@__linnValdKL = @linnValdKL;
            this.@__vaikekohtKL = @vaikekohtKL;
            this.@__punktiXKoordinaat = @punktiXKoordinaat;
            this.@__punktiYKoordinaat = @punktiYKoordinaat;
            this.@__kirjeldus = @kirjeldus;
            this.@__nimi = @nimi;
            this.@__tanav = @tanav;
            this.@__sihtnumber = @sihtnumber;
            this.@__aDRID = @aDRID;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected Aadress(IAadress @aadress) {
            this.@__aadresskood = @aadress.Aadresskood;
            this.@__aadressTekst = @aadress.AadressTekst;
            this.@__maakondKL = @aadress.MaakondKL;
            this.@__alevKylaLinnaosaKL = @aadress.AlevKylaLinnaosaKL;
            this.@__liikluspindKL = @aadress.LiikluspindKL;
            this.@__majaKrunt = @aadress.MajaKrunt;
            this.@__hooneosa = @aadress.Hooneosa;
            this.@__riikKL = @aadress.RiikKL;
            this.@__linnValdKL = @aadress.LinnValdKL;
            this.@__vaikekohtKL = @aadress.VaikekohtKL;
            this.@__punktiXKoordinaat = @aadress.PunktiXKoordinaat;
            this.@__punktiYKoordinaat = @aadress.PunktiYKoordinaat;
            this.@__kirjeldus = @aadress.Kirjeldus;
            this.@__nimi = @aadress.Nimi;
            this.@__tanav = @aadress.Tanav;
            this.@__sihtnumber = @aadress.Sihtnumber;
            this.@__aDRID = @aadress.ADRID;
        }
        
        public virtual string Aadresskood {
            get {
                return this.@__aadresskood;
            }
            set {
                this.@__aadresskood = value;
            }
        }
        
        public virtual string AadressTekst {
            get {
                return this.@__aadressTekst;
            }
            set {
                this.@__aadressTekst = value;
            }
        }
        
        public virtual System.Int64? MaakondKL {
            get {
                return this.@__maakondKL;
            }
            set {
                this.@__maakondKL = value;
            }
        }
        
        public virtual System.Int64? AlevKylaLinnaosaKL {
            get {
                return this.@__alevKylaLinnaosaKL;
            }
            set {
                this.@__alevKylaLinnaosaKL = value;
            }
        }
        
        public virtual System.Int64? LiikluspindKL {
            get {
                return this.@__liikluspindKL;
            }
            set {
                this.@__liikluspindKL = value;
            }
        }
        
        public virtual string MajaKrunt {
            get {
                return this.@__majaKrunt;
            }
            set {
                this.@__majaKrunt = value;
            }
        }
        
        public virtual string Hooneosa {
            get {
                return this.@__hooneosa;
            }
            set {
                this.@__hooneosa = value;
            }
        }
        
        public virtual System.Int64? RiikKL {
            get {
                return this.@__riikKL;
            }
            set {
                this.@__riikKL = value;
            }
        }
        
        public virtual System.Int64? LinnValdKL {
            get {
                return this.@__linnValdKL;
            }
            set {
                this.@__linnValdKL = value;
            }
        }
        
        public virtual System.Int64? VaikekohtKL {
            get {
                return this.@__vaikekohtKL;
            }
            set {
                this.@__vaikekohtKL = value;
            }
        }
        
        public virtual System.Decimal? PunktiXKoordinaat {
            get {
                return this.@__punktiXKoordinaat;
            }
            set {
                this.@__punktiXKoordinaat = value;
            }
        }
        
        public virtual System.Decimal? PunktiYKoordinaat {
            get {
                return this.@__punktiYKoordinaat;
            }
            set {
                this.@__punktiYKoordinaat = value;
            }
        }
        
        public virtual string Kirjeldus {
            get {
                return this.@__kirjeldus;
            }
            set {
                this.@__kirjeldus = value;
            }
        }
        
        public virtual string Nimi {
            get {
                return this.@__nimi;
            }
            set {
                this.@__nimi = value;
            }
        }
        
        public virtual string Tanav {
            get {
                return this.@__tanav;
            }
            set {
                this.@__tanav = value;
            }
        }
        
        public virtual string Sihtnumber {
            get {
                return this.@__sihtnumber;
            }
            set {
                this.@__sihtnumber = value;
            }
        }
        
        public virtual System.Int32? ADRID {
            get {
                return this.@__aDRID;
            }
            set {
                this.@__aDRID = value;
            }
        }
    }
}
